/*** Formatting ***/

html, body {
  font-family: verdana, arial, helvetica, sans-serif;
  font-size: 0.925em;
  color: #666;
  margin: 0;
  padding: 0;
}

ul, li {
  padding: 0;
  margin: 0;
  list-style: none;
}

a {
  text-decoration: none;
  color: #0476D4;
}

a:hover {
  color: #E35809;
}

h1 {
  margin-top: 0;
  font-size: 1.5em;
  font-weight: normal;
  color: #EF6517;
}

h2 {
  margin-top: 1em;
  font-size: 1.5em;
  font-weight: normal;
  color: #EF6517;
}

.subtext {
  font-size: 0.75em;
  color: #888;
}

.announcement {
  font-style: italic;
  font-weight: bold;	
}

div#map {
  width: 100%;
  margin: 0;
  padding: 0;
  height: 100%;
}

div#content {
  padding: 15px 1.5em 10px 1.5em;
  text-align: justify;
  max-width: 1400px;
  margin: 0 auto;  /* Page is centered on wider screen. */
  #margin: 0;  /* Page is left-aligned on wider screen. */
}

div#content p {
  line-height: 1.5em;  /* For better legibility on wider screens */
}

div#footer {
  margin-top: 2.5em;
  text-align: center;
  font-size: 0.85em;
}

/*** HEADER ***/


/*** Logo ***/

div#logobar {
  background-color: #2C4D75;
  padding: 0 5px;
  height: 2.5em;
}

div#logobar a#falling_fruit {
  font-size: 2.2em;
  font-family: helvetica, arial, verdana, sans-serif;
  font-variant: small-caps;
  font-weight: bold;
  color: #FFF;
}

div#logobar span#subtitle {
	color: #FFF;
	font-style: italic;
	font-size: 1.25em;
	margin-left: 1em;
}

div#logobar img {
  float: right;
  height: 100%;
}

div#share_controls {
  float: right;
  width: 180px;  /* For some reason, auto width forces icons onto two lines */
  padding-top: 0.5em;
}

div#warnings {
  position: absolute;
  width: 50%;
  left: 25%;
  right: 25%;
  top: -1px;  /* to hide top border */
  z-index: 9999;  /* so always on top */
}

div#warnings a#warnings_close {
  float: right;
  padding: 0.3em;
  color: #666;
}

div#warnings a#warnings_close:hover {
  color: #000;
}

div#warnings div.notice  {
  background: lightblue;
  padding: 0.35em 0.5em;
}

div#warnings div.alert  {
  background: orange;
  padding: 0.35em 0.5em;
}


/*** Menu ***/

div#menubar {
  background-color: lightgrey;
  #height: 2em;  /* Leaving blank allows menubar to grow in height in narrow displays*/
}

div#menubar a {
  color: #666;
  height: 100%; /* need to ensure edge reaches bottom of bar */
  line-height: 2em;
  padding: 0em 8px;
  display: inline-block;
}

div#menubar a#maplink {
  padding-left: 12px;
}

div#menubar div#rightcontrols {
  float: right;
}

div#menubar a.currentpage {
  background-color: #FFF;
}

div#menubar a:hover:not(.currentpage) {
  color: #FFF;
}

div#menubar span#admin_email {
  font-size: 0.85em;
  font-style: italic;
}

div#menubar span#clickmap {
  font-size: 0.85em;
  #font-style: italic;
}


/**********************************************************/
/******************* /locations/index *********************/
/**********************************************************/

/*** Searchbar ***/

div#searchbar {
 	#height: 3em; /* Leaving blank allows menubar to grow for narrow displays*/
	line-height: 3em;
	background-color: #FFF;
	border-bottom: 2px solid #CCC;
	width: 100%;
	vertical-align: middle;
}

div#searchbar div#searchcontrols {
  padding: 0 9px 0 15px;  /* Adding padding here keeps searchbar width at 100% */
}

div#searchbar button {
	border: 1px solid #DDD;
	border-radius: 4px;
	background-color: #EEE;
	font-size: 0.8em;
	font-family: inherit;
	cursor: pointer;
	position: relative;  /* Fixes vertical alignment issue */
	top: -.1em;
	color: inherit;
}

div#searchbar button:hover {
	background-color: #C6E1F7;
}

div#searchbar input {
	border: 1px solid #DDD;
	padding: 2px 3px;
	font-family: inherit;
	color: inherit;
	font-size: .85em;
}

div#searchbar input[type=checkbox] {
  position: relative;  /* Fixes vertical alignment issue */
  top: -.1em;
}

div#searchbar a#permalink {
  float: right;
}


/*** Map ***/

div#mainmap_container {
  position: absolute;
  top: 7.5em;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;  /* So that if search bar controls wrap, they display above map. */
}

div#newmarker {
  text-align: center;
  font-size: 1em;
  padding-top: 0.7em;
  line-height: 1.3em;
}

/**********************************************************/
/******************* /locations/{edit,new} ****************/
/**********************************************************/

/*** Form ***/

form#editsource {
  padding: 20px 1.5em 10px 1.5em;
  width: 28em;
  position: absolute;
  top: 4.5em;
  bottom: 0;
  left: 0;
  overflow-y: auto;
  line-height: 1em;
}

form#editsource div.field {
  margin-top: 1em;
}

form#editsource label {
  line-height: 1.25em;
  font-weight: bold;
  padding-left: 0;  /* Needed to left-align */
}

form#editsource span.subtext {
  font-size: 0.75em;
  color: #888;
  position: relative;  /* Keeps subtext away from text input edges. */
  top: -.1em;
}

form#editsource span.subtext-inline {  /* Regular behavior, shorthand. */
  font-size: 0.75em;
  color: #888;
}

form#editsource a {
  font-size: 0.85em;
}

form#editsource input, select, textarea {
	font-family: inherit;
	color: inherit;
	font-size: .85em;
	border: 1px solid #CCC;
	padding: 2px 3px;
	margin: 0;
}

form#editsource input#location_lat {
  text-align: right;
}

form#editsource input[type=checkbox] {
  position: relative;  /* Fixes suble vertical align issue. */
  top: -.1em;
}

form#editsource div#captcha {
  position: relative;  /* Widget has slight left margin */
  left: -2px;
}

form#editsource input[type=submit] {
  background-color: #4B8CF5;
  border-radius: 3px;
  border: 1px solid #3278F0;
  display: inline-block;
  color: #FFF;
  font-size: 1em;
  font-weight: bold;
  padding: 6px 20px;
  margin-right: 10px;
}

form#editsource input[type=submit]:hover {
  background-color: #3278E6;
  cursor: pointer;
}


/*** Map ***/

div#editmap_container {
  position: absolute;
  top: 4.5em;
  bottom: 0;
  left: 31em;
  right: 0;
  border-left: 2px solid #DDD;
}

div#editmarker {
  text-align: center;
  font-size: 0.85em;
  width: 18em;
  padding: 0.5em;
}

/**********************************************************/
/******************* /pages/about *************************/
/**********************************************************/

div.rightphoto {
		float: right;
		position: relative;
		top: 1em;  /* Make images flush with top of text */
		margin: 0 0 1.5em 1.5em;  /* To keep text away while wrapping */
		text-align: right;  /* In case image dimensions are not as expected */
		line-height: 0;  /* Fixes unresolved white space bug */
		width: 412px;  /* Multiple of image width + 2 * border + a little */
}

div.rightphoto img {
  width: 200px;
  border: none;
}

div#content img {
	 border: 1px solid #EEE;
}


/*** Data List ***/

/* OPTIONAL - Put all countries on same line. */
div.country {
	display: inline-block;
}

div.country b {
	line-height: 3em;
}

div.datalist {
  margin-left: 25px;
  padding: 0px 5px;
  border-left: 1px solid #EEE;
  display: inline-block;
  vertical-align: top;
}

div.datalist ul {
  margin-left: 3px;
}

div.datalist ul li {
  margin-left: 10px;
}

div.datalist li {
  margin-left: 13px;
}


/*** Profiles ***/

div.profile {
  margin-top: 1.5em;
}

div.profile:after {  /* Clears float instead of a div inside html */
  content: ".";
  display: block;
  height: 0;
  clear: left;
  visibility: hidden;
}

img.avatar {
		float: left;
		width: 200px;
}

div.bio {
		margin-left: 216px;
}

/**********************************************************/
/******************* /pages/data **************************/
/**********************************************************/

table#type_summary img.link_icon {
  height: 1em;
  border: none;
}

/**********************************************************/
/******************* /locations/infobox *******************/
/**********************************************************/

div#location_popup {
  max-width: 35em;
  color: #333;
  font-size: 0.9em;
}

div#location_popup a {
  color: #333;
}

/* Types */

div#type_list li {
  list-style: none;
  margin: 0 0 .3em 0; /* for appropriate "line height" if list longer than one line */
  display: inline-block;
  background-color: #EEE;
  border: 0.25em solid #EEE; /* Instead of padding, solves y-scrollbar bug. But can sometimes crowd [x] button */
  #padding: 0.25em;
  font-size: 1.15em;
}

div#type_list img.type_icon {
  height: 0.9em;
}

/* Description */

label {
  color: #000;
  font-size: 1.05em;
  padding-right: 0.1em;
  padding-left: 0.25em; /* to line up with start of type labels */
  line-height: 1.75em;
}

span.in_season {
  color: green;
}

span.out_season {
  color: brown;
}

div#description p {
  margin: 1.5em 1em 1.5em 1em;
  line-height: 1.5em;
  text-align: left;
}

/* Controls & Author */

table#footer {
  border-collapse: collapse;
	border-spacing: 0;
	padding-left: 0.25em; /* to line up with start of type labels */
}

table#footer td {
	padding: 0;
	margin: 0;
}

table#footer td#controls {
	vertical-align: bottom;
}

table#footer td#controls a {
	color: #999;
	padding-right: 1em;
}

table#footer td#controls a:hover {
	color: #333;
}

table#footer td#added_by {
	color: #AAA;
	padding-left: 1em;
	border-left: 1px solid #DDD;
}